home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 26
/
Cream of the Crop 26.iso
/
program
/
raycast.zip
/
BUILD.BAS
next >
Wrap
BASIC Source File
|
1997-05-18
|
3KB
|
119 lines
' Raycast 3D Level Builder v2.0
' Created by Exodus
' By LogicMouse.
' ^ Name of Company
DECLARE SUB Cursor (Col%)
COMMON SHARED X%, Y%
SCREEN 7, 0, 0, 0
ON ERROR GOTO 5
GOTO g
5 CLS
PRINT "Bad File Name."
SLEEP 1
END
g:
LINE (0, 0)-(319, 199), 1, B
LOCATE 2, 9
COLOR 15
PRINT "Raycast 3D Level Builder"
LINE (0, 22)-(319, 22), 1
FOR X% = 10 TO 120 STEP 10
FOR Y% = 50 TO 160 STEP 10
LINE (X%, Y%)-(X% + 10, Y% + 10), 1, B
NEXT
NEXT
LINE (189, 50)-(309, 170), 1, B
PAINT (190, 51), 15, 1
X% = 1
Y% = 1
c% = 9
Main:
COLOR 15
LOCATE 5, 2
PRINT STR$(X%) + "," + STR$(Y%) + " "
Cursor 12
LOCATE 23, 3
COLOR c%
PRINT "Color - Press C to change."
LINE (200, 75)-(200, 155), 0
LINE -(280, 160), 0
LINE -(280, 80), 0
LINE -(200, 75), 0
LINE (200, 75)-(220, 60), 0
LINE (280, 80)-(300, 65), 0
LINE (280, 160)-(300, 145), 0
LINE (220, 60)-(300, 65), 0
LINE -(300, 145), 0
PAINT (205, 80), c%, 0
PAINT (210, 70), c%, 0
PAINT (295, 90), c%, 0
DO
A$ = INKEY$
A$ = UCASE$(A$)
IF A$ = CHR$(27) THEN
CLS
SYSTEM
END IF
IF A$ = CHR$(0) + CHR$(77) AND X% < 12 THEN
Cursor 1
X% = X% + 1
GOTO Main
END IF
IF A$ = CHR$(0) + CHR$(75) AND X% > 1 THEN
Cursor 1
X% = X% - 1
GOTO Main
END IF
IF A$ = CHR$(0) + CHR$(80) AND Y% < 12 THEN
Cursor 1
Y% = Y% + 1
GOTO Main
END IF
IF A$ = CHR$(0) + CHR$(72) AND Y% > 1 THEN
Cursor 1
Y% = Y% - 1
GOTO Main
END IF
IF A$ = CHR$(32) THEN
LINE (X% * 10 + 1, 40 + (Y% * 10) + 1)-(10 + (X% * 10) - 1, 50 + (Y% * 10) - 1), c%, BF
END IF
IF A$ = CHR$(13) THEN
LINE (X% * 10 + 1, 40 + (Y% * 10) + 1)-(10 + (X% * 10) - 1, 50 + (Y% * 10) - 1), 0, BF
END IF
IF A$ = "C" THEN
PickColor:
LOCATE 23, 3
PRINT " "
LOCATE 23, 3
INPUT "New Color: (0 to erase a wall)", c%
IF c% < 0 OR c% > 15 THEN GOTO PickColor
LOCATE 23, 3
PRINT " "
GOTO Main
END IF
IF A$ = "S" THEN
LOCATE 5, 10
LINE INPUT "Save As (No ext.): ", save$
LOCATE 5, 10
PRINT STRING$(28, 32);
OPEN save$ + ".lev" FOR OUTPUT AS #1
FOR SaveX% = 10 TO 120 STEP 10
FOR SaveY% = 50 TO 160 STEP 10
PRINT #1, POINT(SaveX% + 1, SaveY% + 1);
NEXT
PRINT #1,
NEXT
GOTO Main
END IF
LOOP
SUB Cursor (Col%)
LINE (X% * 10, 40 + (Y% * 10))-(10 + (X% * 10), 50 + (Y% * 10)), Col%, B
END SUB